home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1998 July
/
EnigmA AMIGA RUN 29 (1998)(G.R. Edizioni)(IT)[!][issue 1998-07 & 08].iso
/
earkit
/
news
/
thor
/
hd-install
/
thor.lha
/
rexx
/
BBSRead
/
CheckDataBase.br
< prev
next >
Wrap
Text File
|
1997-08-27
|
2KB
|
92 lines
/* CheckDataBase.br
*
* Script by: Eivind Nordseth, Ultima Thule Software.
*
* Improved by: Magne Østlyngen and then Eirik Synnes
*
*/
parse arg argument
template = 'BBSNAME/A,CONFNAME,DELETE/S'
if (argument = '' | argument = '?') then
do
say '$VER: CheckDataBase 3.3 (5.8.97)'
say 'Checks the messages in one or ALL BBSes. If the DELETE switch is used will '
say 'all messages which are impossible to read be marked as deleted.'
say 'Template:' template
exit
end
if ~show('p','BBSREAD') then do;address command
"run >nil: `GetEnv THOR/THORPath`bin/LoadBBSRead";"WaitForPort BBSREAD";end
address BBSREAD
READARGS template ARGS CMDLINE argument
if rc~=0 then do
say BBSREAD.LASTERROR
exit 0
end
options failat 31
if upper(ARGS.BBSNAME) = "ALL" then do
GETBBSLIST stem BBSLIST
if rc~=0 then do
say BBSREAD.LASTERROR
exit 0
end
end
else do
BBSLIST.1 = ARGS.BBSNAME
BBSLIST.COUNT = 1
end
do n=1 to BBSLIST.COUNT
say 'Checking bbs:' BBSLIST.n
if symbol("ARGS.CONFNAME")~="VAR" then do
GETCONFLIST stem CONFLIST '"'||BBSLIST.n||'"'
if rc~=0 then do
say BBSREAD.LASTERROR
exit 0
end
end
else do
CONFLIST.1 = ARGS.CONFNAME
CONFLIST.COUNT = 1
end
do i=1 to CONFLIST.COUNT
say ' Checking conference:' CONFLIST.i
GETCONFDATA '"'||BBSLIST.n||'"' '"'||CONFLIST.i||'"' stem CONFDATA
if rc~=0 then do
say BBSREAD.LASTERROR
exit 0
end
do k = CONFDATA.FIRSTMSG to CONFDATA.LASTMSG
READBRMESSAGE '"'||BBSLIST.n||'"' '"'||CONFLIST.i||'"' k datastem DATA headstem HEAD textstem TEXT
if rc~=0 then do
Say ' Error reading message' k ':' BBSREAD.LASTERROR
if ARGS.DELETE~=0 then do
say ' Marking message as deleted.'
UPDATEBRMESSAGE '"'||BBSLIST.n||'"' '"'||CONFLIST.i||'"' k SETDELETED
if rc~=0 then
say ' Unable to mark message as deleted:' BBSREAD.LASTERROR
end
end
drop DATA. HEAD. TEXT.
end
drop CONFDATA.
end
end
exit 0